/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package util;

/**
 *
 * @author Winnie
 */
public class DigitoControl {

    private String entidad = "2100";
    private String sucursal = "";

    public String getEntidad() {
        return entidad;
    }

    public void setEntidad(String entidad) {
        this.entidad = entidad;
    }

    public String getSucursal() {
        return sucursal;
    }

    public void setSucursal(String sucursal) {
        this.sucursal = sucursal;
    }

    public String calculo_dc(String n_cuenta) {
        String dc = "";
        int calculo = 0;
        int calculo1 = 0;
        String dc1 = "";
        String dc2 = "";
        String enti = this.getEntidad();
        String sucur = this.getSucursal();
        /*Primer dígito.*/
        for (int i = 0; i < 4; i++) {
            if (i == 0) {
                calculo1 = Integer.parseInt(enti.substring(i, i + 1)) * 4;
            } else if (i == 1) {
                calculo1 = Integer.parseInt(enti.substring(i, i + 1)) * 8;
            } else if (i == 2) {
                calculo1 = Integer.parseInt(enti.substring(i, i + 1)) * 5;
            } else {
                calculo1 = Integer.parseInt(enti.substring(i, i + 1)) * 10;
            }
            calculo = calculo + calculo1;
        }
        for (int j = 0; j < 4; j++) {
            if (j == 0) {
                calculo1 = Integer.parseInt(sucur.substring(j, j + 1)) * 9;
            } else if (j == 1) {
                calculo1 = Integer.parseInt(sucur.substring(j, j + 1)) * 7;
            } else if (j == 2) {
                calculo1 = Integer.parseInt(sucur.substring(j, j + 1)) * 3;
            } else {
                calculo1 = Integer.parseInt(sucur.substring(j, j + 1)) * 6;
            }
            calculo = calculo + calculo1;
        }

        calculo1 = 11 - calculo % 11;
        if (calculo1 == 10) {
            dc1 = String.valueOf(1);
        } else if (calculo1 == 11) {
            dc1 = String.valueOf(0);
        } else {
            dc1 = String.valueOf(calculo1);
        }
        calculo = 0;

        /*Segundo dígito.*/
        for (int k = 0; k < 10; k++) {
            if (k == 0) {
                calculo1 = Integer.parseInt(n_cuenta.substring(k, k + 1)) * 1;
            } else if (k == 1) {
                calculo1 = Integer.parseInt(n_cuenta.substring(k, k + 1)) * 2;
            } else if (k == 2) {
                calculo1 = Integer.parseInt(n_cuenta.substring(k, k + 1)) * 4;
            } else if (k == 3) {
                calculo1 = Integer.parseInt(n_cuenta.substring(k, k + 1)) * 8;
            } else if (k == 4) {
                calculo1 = Integer.parseInt(n_cuenta.substring(k, k + 1)) * 5;
            } else if (k == 5) {
                calculo1 = Integer.parseInt(n_cuenta.substring(k, k + 1)) * 10;
            } else if (k == 6) {
                calculo1 = Integer.parseInt(n_cuenta.substring(k, k + 1)) * 9;
            } else if (k == 7) {
                calculo1 = Integer.parseInt(n_cuenta.substring(k, k + 1)) * 7;
            } else if (k == 8) {
                calculo1 = Integer.parseInt(n_cuenta.substring(k, k + 1)) * 3;
            } else {
                calculo1 = Integer.parseInt(n_cuenta.substring(k, k + 1)) * 6;
            }
            calculo = calculo + calculo1;
        }
        calculo1 = 11 - calculo % 11;
        if (calculo1 == 10) {
            dc2 = String.valueOf(1);
        } else if (calculo1 == 11) {
            dc2 = String.valueOf(0);
        } else {
            dc2 = String.valueOf(calculo1);
        }
        calculo = 0;
        dc = String.valueOf(dc1) + String.valueOf(dc1);
        return dc;
    }
}
